AirMenu

Multi-restaurant, mobile-first menus

Admin Login Browse Menus

Our Restaurants

The Golden Spoon
The Golden Spoon

123 Main Street, Downtown

Spice Garden
Spice Garden

456 Oak Avenue, Midtown

Ocean Breeze Cafe
Ocean Breeze Cafe

789 Beach Road, Seaside

Sunset Grill
Sunset Grill

101 Sunset Blvd, Cityville

Urban Eats
Urban Eats

202 Urban Ave, Metropolis

Green Leaf
Green Leaf

303 Greenway, Greentown

Blue Ocean
Blue Ocean

404 Ocean Dr, Seaside

Mountain Dine
Mountain Dine

505 Mountain Rd, Hilltown

City Bites
City Bites

606 City St, Urbania

Country Kitchen
Country Kitchen

707 Country Ln, Ruralville

River Cafe
River Cafe

808 River Rd, Watertown

Forest Feast
Forest Feast

909 Forest Dr, Woodsville

Desert Diner
Desert Diner

1010 Desert St, Sandtown

Harbor House
Harbor House

1111 Harbor Ave, Portcity

Lakeside Table
Lakeside Table

1212 Lakeview Dr, Laketown

Garden Grill
Garden Grill

1313 Garden St, Flowerville

Metro Meals
Metro Meals

1414 Metro Ave, Bigcity

Village Eatery
Village Eatery

1515 Village Rd, Hamlet

Features

Multi-tenant

Superadmin assigns restaurants and admins; data stays isolated per tenant.

Menu control

Categories, items, prices, availability toggles, images, and QR codes.

Role-aware UI

Superadmin, admin, staff with route guards and responsive EJS screens.

Offline friendly

Serve cached menu pages on local network; plan static fallbacks for kiosks.

Developer notes

  • Use `npm run build` to emit JS to `build/`.
  • Keep `server.ts` listener-only; app logic lives in `main.ts`.
  • Add routes under `src/routes` and mount in `main.ts`.